// 进行打包 monorepo
// 1 获取打包目录
const fs = require('fs');
const dirs = fs.readdirSync('packages').filter(file => {
  if (!fs.statSync(`packages/${file}`).isDirectory()) {
    return false;
  }
  return true;
})
async function build(target) {
  // 使用execa, -c 表示执行rollup的配置，
  const {execa} =  await import('execa');
  await execa('rollup', ['-c', '--environment', `TARGET:${target}`], { stdio: 'inherit'}); // 子进程在父包中输出
}
async function runParallel (dirs, fn) {
  let res = [];
  for (let dirsKey of dirs) {
    res.push(await fn(dirsKey));
  }
  return Promise.all(res); // 存放打包的promise
}
//2. 进行打包， 并行
runParallel(dirs, build).then(() => {
  console.log('打包成功')
});
// 注意， 
